<?php

    include_once("../../../programas/include_utiles.php");
    include_once("../../../gestion/comunes/reclamo/class.greclamo_web.php");
    include_once("../../../entidad/comunes/reclamo/class.reclamo_web.php");
    include_once("../../../informacion/comunes/reclamo/class.ireclamo_web.php");
    
    $opcion = $_REQUEST["opcion"];
    
    $idreclamo_web = $_REQUEST["idreclamo_web"];
    $fecha = $_REQUEST["fecha"];
    $nombre = $_REQUEST["nombre"];
    $email = $_REQUEST["email"];
    $comentario = $_REQUEST["comentario"];
    
    $fecha_inicio = $_REQUEST["fecha_inicio"];
    $fecha_fin = $_REQUEST["fecha_fin"];
    $estado_reclamo = $_REQUEST["estado_reclamo"];
    
    switch ( $opcion )
    {
        case "reclamo_nuevo": 
            reclamo_web_nuevo($nombre, $email, $comentario, $fecha);
            break;
        
        case "reclamos_listar_hoy":
            reclamo_web_listar_hoy();
            break;
        case "reclamos_listar_fechas":
            reclamo_web_listar_entre_fechas($fecha_inicio, $fecha_fin, $estado_reclamo);
            break;
        case "reclamo_ver_completo":
            reclamo_ver_completo ($idreclamo_web);
            break;
        case "reclamo_responder":
            reclamo_responder($idreclamo_web, $fecha_inicio, $fecha_fin, $estado);
            break;
        default :
            //reclamo_web_ver_buscar();
            reclamo_web_listar_hoy();
            break;
    }
    
    function reclamo_web_ver_buscar() 
    {
        $plantilla = new DmpTemplate("../../../plantillas/comunes/reclamo/reclamo_buscar.html");
        
        echo $plantilla->presentaPlantilla();
    }
    
    function reclamo_web_nuevo ( $nombre, $email, $comentario, $fecha ) 
    {
        $greclamo_web = new greclamo_web();
        $ayudante = new Ayudante();
        $fechamysql = $ayudante->FechaRevezMysql($fecha, "/");
        
        if ( $greclamo_web->nuevo_reclamo_web( $nombre, $email, $comentario, $fechamysql ) ) 
        {
            echo "Comentario guardado.";
        } 
        else 
        {
            echo "";
        } 
    }
    
    function reclamo_web_listar_hoy() 
    {
        $fecha = date("d-m-Y");
        $plantilla = new DmpTemplate("../../../plantillas/comunes/reclamo/reclamo_buscar.html");
        $plantilla->reemplaza("fecha_inicio", $fecha);
        $plantilla->reemplaza("fecha_fin", $fecha);
        
        $fecha_mysql = date("Y-m-d");
        $ireclamo_web = new ireclamo_web();
        $reclamos = $ireclamo_web->lista_reclamos_fecha($fecha_mysql);
        
        if ( $reclamos != null ) 
        {
            $plantilla->iniciaBloque("resultados");
            $ayudante = new Ayudante();
            
            while( $reclamo = mysql_fetch_array($reclamos) ) 
            {                
                $plantilla->iniciaBloque("fila_reclamo");
                $plantilla->reemplazaEnBloque("idreclamo", $reclamo['idreclamo_web'], "fila_reclamo");
                $plantilla->reemplazaEnBloque("fecha",  $ayudante->FechaRevez($reclamo["fecha"]), "fila_reclamo");
                $plantilla->reemplazaEnBloque("nombre", $reclamo["nombre"], "fila_reclamo");
                $plantilla->reemplazaEnBloque("email", $reclamo["email"], "fila_reclamo");
                $plantilla->reemplazaEnBloque("comentario",  $ayudante->sacar_resumen_texto($reclamo["comentario"], 115 ), "fila_reclamo");
                
                if ( $reclamo["estado"] == 0 ) 
                {
                    $plantilla->reemplazaEnBloque("estado", "Nuevo", "fila_reclamo");
                }
                else 
                {
                    $plantilla->reemplazaEnBloque("estado", "Atendido", "fila_reclamo");
                }
            }
        }
        
        echo $plantilla->presentaPlantilla();
        
    }
    
    function reclamo_web_listar_fecha ( $fecha ) 
    {
        $ireclamo_web = ireclamo_web();
        return $ireclamo_web->lista_reclamos_fecha($fecha);        
    } 
    
    function reclamo_web_listar_entre_fechas ( $fecha_inicio, $fecha_fin, $estado ) 
    {
        $plantilla = new DmpTemplate("../../../plantillas/comunes/reclamo/reclamo_buscar.html");
        
        $plantilla->reemplaza("fecha_inicio", $fecha_inicio);
        $plantilla->reemplaza("fecha_fin", $fecha_fin);
        
        switch ( $estado ) 
        {
            case "-1" :
                $plantilla->reemplaza("1", "selected"); break;
            case "0" :
                $plantilla->reemplaza("2", "selected"); break;
            case "1" :
                $plantilla->reemplaza("3", "selected"); break;
        }
        
        $ireclamo = new ireclamo_web();
        $reclamos = $ireclamo->lista_reclamos_entre_fechas($fecha_inicio, $fecha_fin, $estado);
        
        if ( $reclamos != null ) 
        {
            $plantilla->iniciaBloque("resultados");
            $ayudante = new Ayudante();
            
            while( $reclamo = mysql_fetch_array($reclamos) ) 
            {                
                $plantilla->iniciaBloque("fila_reclamo");
                $plantilla->reemplazaEnBloque("idreclamo", $reclamo['idreclamo_web'], "fila_reclamo");
                $plantilla->reemplazaEnBloque("fecha",  $ayudante->FechaRevez($reclamo["fecha"]), "fila_reclamo");
                $plantilla->reemplazaEnBloque("nombre", $reclamo["nombre"], "fila_reclamo");
                $plantilla->reemplazaEnBloque("email", $reclamo["email"], "fila_reclamo");
                $plantilla->reemplazaEnBloque("comentario",  $ayudante->sacar_resumen_texto($reclamo["comentario"], 115 ), "fila_reclamo");
                
                if ( $reclamo["estado"] == 0 ) 
                {
                    $plantilla->reemplazaEnBloque("estado", "Nuevo", "fila_reclamo");
                }
                else 
                {
                    $plantilla->reemplazaEnBloque("estado", "Atendido", "fila_reclamo");
                }
            }
        }
        
        echo $plantilla->presentaPlantilla();     
    }
    
    function reclamo_ver_completo ($idreclamo_web) 
    {
        $plantilla = new DmpTemplate("../../../plantillas/comunes/reclamo/reclamo_ver.html");
        
        $ayudante = new Ayudante();
        $reclamo = new reclamo_web($idreclamo_web);
        
        $plantilla->iniciaBloque("reclamo_ver");
        $plantilla->reemplazaEnBloque("idreclamo", $reclamo->id,"reclamo_ver");
        $plantilla->reemplazaEnBloque("fecha",$ayudante->FechaRevez($reclamo->fecha),"reclamo_ver");
        $plantilla->reemplazaEnBloque("nombre",$reclamo->nombre,"reclamo_ver");
        $plantilla->reemplazaEnBloque("email",$reclamo->email,"reclamo_ver");
        $plantilla->reemplazaEnBloque("comentario",$reclamo->comentario,"reclamo_ver");
        
        echo $plantilla->getPlantillaCadena();
    }
    
    function reclamo_responder($idreclamo_web, $fecha_inicio, $fecha_fin, $estado) 
    {
        $greclamo = new greclamo_web();
        
        if ( $greclamo->actualizar_estado_reclamo_web($idreclamo_web) ) 
        {
            header ("Location: ../../../programas/comunes/reclamo/areclamo_web.php?opcion=reclamos_listar_fechas&fecha_inicio=$fecha_inicio&fecha_fin=$fecha_fin&estado_reclamo=$estado");
        }
    }

?>